home *** CD-ROM | disk | FTP | other *** search
-
-
-
- Tcl_LinkVar(3) Tcl Library Procedures 7.0
-
-
-
- _________________________________________________________________
-
- NAME
- Tcl_LinkVar, Tcl_UnlinkVar - link Tcl variable to C variable
-
- SYNOPSIS
- #include <tcl.h>
-
- int
- Tcl_LinkVar(_i_n_t_e_r_p, _v_a_r_N_a_m_e, _a_d_d_r, _t_y_p_e)
-
- Tcl_UnlinkVar(_i_n_t_e_r_p, _v_a_r_N_a_m_e)
-
- ARGUMENTS
- Tcl_Interp *_i_n_t_e_r_p (in) Interpreter that contains
- _v_a_r_N_a_m_e. Also used by
- Tcl_LinkVar to return
- error messages.
-
- char *_v_a_r_N_a_m_e (in) Name of global variable.
-
- char *_a_d_d_r (in) Address of C variable that
- is to be linked to _v_a_r_-
- _N_a_m_e.
-
- int _t_y_p_e (in) Type of C variable. Must
- be one of TCL_LINK_INT,
- TCL_LINK_DOUBLE,
- TCL_LINK_BOOLEAN, or
- TCL_LINK_STRING, option-
- ally OR'ed with
- TCL_LINK_READ_ONLY to make
- Tcl variable read-only.
- _________________________________________________________________
-
-
- DESCRIPTION
- Tcl_LinkVar uses variable traces to keep the Tcl variable
- named by _v_a_r_N_a_m_e in sync with the C variable at the address
- given by _a_d_d_r. Whenever the Tcl variable is read the value
- of the C variable will be returned, and whenever the Tcl
- variable is written the C variable will be updated to have
- the same value. Tcl_LinkVar normally returns TCL_OK; if an
- error occurs while setting up the link (e.g. because _v_a_r_N_a_m_e
- is the name of array) then TCL_ERROR is returned and
- _i_n_t_e_r_p->_r_e_s_u_l_t contains an error message.
-
- The _t_y_p_e argument specifies the type of the C variable, and
- must have one of the following values, optionally OR'ed with
- TCL_LINK_READ_ONLY:
-
- TCL_LINK_INT
-
-
-
- Tcl 1
-
-
-
-
-
-
- Tcl_LinkVar(3) Tcl Library Procedures 7.0
-
-
-
- The C variable is of type int. Any value written into
- the Tcl variable must have a proper integer form
- acceptable to Tcl_GetInt; attempts to write non-
- integer values into _v_a_r_N_a_m_e will be rejected with Tcl
- errors.
-
- TCL_LINK_DOUBLE
- The C variable is of type double. Any value written
- into the Tcl variable must have a proper real form
- acceptable to Tcl_GetDouble; attempts to write non-
- real values into _v_a_r_N_a_m_e will be rejected with Tcl
- errors.
-
- TCL_LINK_BOOLEAN
- The C variable is of type int. If its value is zero
- then it will read from Tcl as ``0''; otherwise it will
- read from Tcl as ``1''. Whenver _v_a_r_N_a_m_e is modified,
- the C variable will be set to a 0 or 1 value. Any
- value written into the Tcl variable must have a proper
- boolean form acceptable to Tcl_GetBoolean; attempts to
- write non-boolean values into _v_a_r_N_a_m_e will be rejected
- with Tcl errors.
-
- TCL_LINK_STRING
- The C variable is of type char *. If its value is not
- null then it must be a pointer to a string allocated
- with malloc. Whenever the Tcl variable is modified the
- current C string will be freed and new memory will be
- allocated to hold a copy of the variable's new value.
- If the C variable contains a null pointer then the Tcl
- variable will read as ``NULL''.
-
- If the TCL_LINK_READ_ONLY flag is present in _t_y_p_e then the
- variable will be read-only from Tcl, so that its value can
- only be changed by modifying the C variable. Attempts to
- write the variable from Tcl will be rejected with errors.
-
-
- KEYWORDS
- boolean, integer, link, read-only, real, string, variable
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Tcl 2
-
-
-
-